package com.yxy.service;

import com.yxy.common.PageResult;
import com.yxy.pojo.dto.AdminDTO;
import com.yxy.pojo.dto.AdminLoginDTO;
import com.yxy.pojo.dto.AdminPageQueryDTO;
import com.yxy.pojo.entity.Admin;

import java.util.List;

public interface AdminService {
    /**
     * 管理员登录
     * @param adminLoginDTO
     * @return
     */
    Admin login(AdminLoginDTO adminLoginDTO);

    /**
     * 根据id获取管理员信息
     * @param id
     * @return
     */
    Admin getAdminInfoById(int id);

    /**
     * 更新管理员信息
     * @param adminDTO
     */
    void update(AdminDTO adminDTO);

    /**
     * 分页查询管理员信息
     * @param adminPageQueryDTO
     * @return
     */
    PageResult pageQuery(AdminPageQueryDTO adminPageQueryDTO);

    /**
     * 批量删除管理员
     * @param ids
     */
    void batchDelete(List<Integer> ids);

    /**
     * 更新管理员状态
     * @param id
     * @param status
     */
    void updateStatus(int id, int status);

    /**
     * 新增管理员
     * @param adminDTO
     */
    void add(AdminDTO adminDTO);
}
